Java Technologies Inheritance Example: Single এবং Multilevel Inheritance এর উদাহরণ গাইড ও নোট

540

Inheritance (উত্তরাধিকার) হল একটি অবজেক্ট-অরিয়েন্টেড প্রোগ্রামিং (OOP) ধারণা, যেখানে একটি ক্লাস অন্য একটি ক্লাসের বৈশিষ্ট্য (প্রপার্টি এবং মেথড) অর্জন করে। Java তে ইনহেরিটেন্স দুটি ধরনের হতে পারে: Single Inheritance এবং Multilevel Inheritance। নিচে এই দুই ধরনের ইনহেরিটেন্সের উদাহরণ দেওয়া হলো।

1. Single Inheritance Example

Single Inheritance হল এমন একটি ইনহেরিটেন্স যেখানে একটি ক্লাস অন্য একটি ক্লাস থেকে বৈশিষ্ট্য (প্রপার্টি এবং মেথড) অর্জন করে।

উদাহরণ: Single Inheritance

// Superclass (Parent Class)
class Animal {
    // সাধারণ বৈশিষ্ট্য (Property)
    String name;
    
    // সাধারণ মেথড (Method)
    void eat() {
        System.out.println("This animal eats food.");
    }
}

// Subclass (Child Class)
class Dog extends Animal {
    // বাচ্চা ক্লাসে নতুন বৈশিষ্ট্য এবং মেথড
    void bark() {
        System.out.println("The dog barks.");
    }
}

public class SingleInheritanceExample {
    public static void main(String[] args) {
        // বাচ্চা ক্লাসের অবজেক্ট তৈরি করা
        Dog dog = new Dog();
        
        // Superclass (Parent) এর মেথড ব্যবহার
        dog.eat();
        
        // Subclass (Child) এর মেথড ব্যবহার
        dog.bark();
    }
}

আউটপুট:

This animal eats food.
The dog barks.

ব্যাখ্যা:

  • Animal হল সুপার ক্লাস (প্যারেন্ট ক্লাস), যার মধ্যে eat() মেথড রয়েছে।
  • Dog হল সাব ক্লাস (চাইল্ড ক্লাস), যা Animal থেকে eat() মেথড এবং name প্রপার্টি ইনহেরিট করেছে এবং নিজের একটি নতুন মেথড bark() যুক্ত করেছে।
  • Dog ক্লাস একটি ইনস্ট্যান্স তৈরি করেছে এবং প্যারেন্ট ক্লাসের বৈশিষ্ট্য এবং মেথড ব্যবহার করেছে।

2. Multilevel Inheritance Example

Multilevel Inheritance হল এমন একটি ইনহেরিটেন্স যেখানে একটি ক্লাস অন্য ক্লাস থেকে ইনহেরিট করে, এবং সেই ইনহেরিট করা ক্লাস আবার অন্য ক্লাস থেকে ইনহেরিট করে। অর্থাৎ, এটি একাধিক স্তরের ইনহেরিটেন্স।

উদাহরণ: Multilevel Inheritance

// Superclass (Grandparent Class)
class Animal {
    void eat() {
        System.out.println("This animal eats food.");
    }
}

// Intermediate class (Parent Class)
class Dog extends Animal {
    void bark() {
        System.out.println("The dog barks.");
    }
}

// Subclass (Child Class)
class Puppy extends Dog {
    void sleep() {
        System.out.println("The puppy sleeps.");
    }
}

public class MultilevelInheritanceExample {
    public static void main(String[] args) {
        // Puppy ক্লাসের অবজেক্ট তৈরি করা
        Puppy puppy = new Puppy();
        
        // Grandparent, Parent, এবং Child ক্লাসের মেথড ব্যবহার
        puppy.eat();   // Animal ক্লাস থেকে ইনহেরিট করা মেথড
        puppy.bark();  // Dog ক্লাস থেকে ইনহেরিট করা মেথড
        puppy.sleep(); // Puppy ক্লাসের মেথড
    }
}

আউটপুট:

This animal eats food.
The dog barks.
The puppy sleeps.

ব্যাখ্যা:

  • Animal হল সুপার ক্লাস (গ্র্যান্ডপ্যারেন্ট ক্লাস), যার মধ্যে eat() মেথড রয়েছে।
  • Dog হল ইন্টারমিডিয়েট ক্লাস (প্যারেন্ট ক্লাস), যা Animal থেকে eat() মেথড ইনহেরিট করেছে এবং নিজের একটি নতুন মেথড bark() যোগ করেছে।
  • Puppy হল সাব ক্লাস (চাইল্ড ক্লাস), যা Dog থেকে bark() মেথড ইনহেরিট করেছে এবং নিজের নতুন মেথড sleep() যোগ করেছে।
  • Puppy ক্লাসের অবজেক্টটি eat(), bark(), এবং sleep() মেথডগুলো ব্যবহার করতে পারছে।

বিভিন্ন ধরনের ইনহেরিটেন্স:

  1. Single Inheritance:
    • একটি ক্লাস অন্য একটি ক্লাস থেকে ইনহেরিট করে।
    • উদাহরণ: class Dog extends Animal {}
  2. Multilevel Inheritance:
    • একাধিক ক্লাসের মধ্যে ইনহেরিটেন্স ঘটে, যেখানে একটি ক্লাস অন্য একটি ক্লাস থেকে ইনহেরিট করে এবং সেই ইনহেরিট করা ক্লাস আবার অন্য একটি ক্লাস থেকে ইনহেরিট করে।
    • উদাহরণ: class Puppy extends Dog {}
  • Single Inheritance: একটি ক্লাস সরাসরি একটি অন্য ক্লাস থেকে বৈশিষ্ট্য অর্জন করে।
  • Multilevel Inheritance: একাধিক ক্লাসের মধ্যে ইনহেরিটেন্সের ধারাবাহিকতা থাকে, যেখানে একটি ক্লাস অন্য একটি ক্লাস থেকে ইনহেরিট করে, এবং সেই ক্লাস আবার অন্য একটি ক্লাস থেকে ইনহেরিট করে।

এই দুই ধরনের ইনহেরিটেন্স Java-তে কোড পুনঃব্যবহার এবং ওভারলোডিংয়ের ক্ষেত্রে বেশ গুরুত্বপূর্ণ এবং সহজে কোড পরিচালনা করতে সাহায্য করে।

Content added By
Promotion

Are you sure to start over?

Loading...